A mouse is a control device, used with a computer and monitor, in which one or more transducers in a movable, hand-held device convert translational motion into a position signal, most frequently used for controlling a cursor. Other signals may be generated by finger actuated buttons on the device. Movement of the device is converted to movement of the cursor. Motion is sensed in x and y directions, and sometimes rotation in the x-y plane known as yaw motion is also sensed, as the housing moves over a surface known as a pad. Analogous motion of the cursor in x and y directions takes place as the mouse delivers its position signals to an associated computer. Rotational motion is useful in applications software, such as drawing or computer aided design (CAD) programs. An example of a mouse with optical sensors for detecting motion is U.S. Pat. No. 4,920,260, by K. Victor and C. Goy, assigned to the assignee of the present invention. In this patent the mouse moves over a pad having a repetitive pattern of optical markings which are illuminated by a beam of light. Line crossings are counted as a measure of motion of the device. U.S. Pat. No. 4,364,035 to S. Kirsch shows a similar device, with a different detection scheme. One of the features of the Kirsch mouse, described with reference to FIG. 6 of the '035 patent,, is that it can detect rotation, as well as translation,. See U.S. Pat. No. 4,797,544 to J. Montgomery which describes circuitry for tracking two optical detectors reporting two position locations X1, Y1 and X2, Y2 in order to compute rotation. See also U.S. Pat. No. 4,984,287 to Massoudi, assigned to the assignee of the present invention. Although the two detectors described in the latter two patents exist in a scanner, they could also exist in a mouse, as in the '035 Kirsch patent, hereafter collectively referred to as a "dual detector mouse".
A trackball is another cursor control device. A trackball converts rotational motion of a ball into x,y quadrature signals, compatible with the x,y signals produced by a mouse. The ball is suspended in a fixed position, as shown in U.S. Pat. No. 4,933,670. The latter patent recognizes that more than three degrees of freedom or dimensions may be desirable in a trackball and incorporates control buttons, annular rings about the ball, and a partial keyboard for additional commands.
The need for more than three degrees of freedom has been recognized for certain new software applications, particularly graphics. For example, besides the usual x and y translation of images, rotation of images with yaw, roll and pitch is useful for examining the shape of an object. Moreover, a z degree of freedom is useful for pointing out depth of an object or for moving in an orthogonal direction in a spreadsheet to access depthwise layers of a three dimensional data space. This leads to 6 dimensions or degrees of freedom, even though roll, pitch and yaw are not necessarily independent of x, y and z. Rather roll, pitch and yaw can be another way of expressing motion in the same space as x, y and z.
In U.S. Pat. No. 5,095,303 Clark et al. disclose a mouse having six degrees of freedom for controlling x, y and z motion, plus pitch, roll and yaw.
Over the years, computer programs have become more sophisticated, calling for users to control various tools which are needed to fully implement a computer program. For example, the popular Windows operating system of Microsoft Corporation, which virtually requires use of a mouse, also uses the mouse to perform subfunctions within the operating system, such as erasing, painting, drawing lines of various widths, scrolling, defining blocks, moving or deleting blocks, and the like. Each of these subfunctions is usually implemented through a pull-down menu and clicking upon the desired subfunction and then using the mouse to define the dimensions or parameters of the subfunction.
While the Windows operating system has greatly simplified operation of a computer, implementation of subfunctions within windows based operating systems can still be tedious.
An object of the invention is to improve performance of Windows and similar operating systems and programs by simplifying and accelerating subfunctions performed by mice, in particular the scrolling function.